package de.godlike.services.internal.dataTypes;

public class File {
	private String name;
	private String path;
	private String parent;
	private boolean absolute;
	private String absolutePath;
	private boolean canRead;
	private boolean canWrite;
	private boolean canExecute;
	private boolean directory;
	private boolean file;
	private boolean hidden;
	private long lastModified;
	private long length;
	private long totalSpace;
	private long freeSpace;
	private long usableSpace;

	/**
	 * @param name
	 * @param path
	 * @param parent
	 * @param absolute
	 * @param absolutePath
	 * @param canRead
	 * @param canWrite
	 * @param canExecute
	 * @param directory
	 * @param file
	 * @param hidden
	 * @param lastModified
	 * @param length
	 * @param totalSpace
	 * @param freeSpace
	 * @param usableSpace
	 */
	public File(String name, String path, String parent, boolean absolute,
			String absolutePath, boolean canRead, boolean canWrite,
			boolean canExecute, boolean directory, boolean file,
			boolean hidden, long lastModified, long length, long totalSpace,
			long freeSpace, long usableSpace) {
		super();
		this.name = name;
		this.path = path;
		this.parent = parent;
		this.absolute = absolute;
		this.absolutePath = absolutePath;
		this.canRead = canRead;
		this.canWrite = canWrite;
		this.canExecute = canExecute;
		this.directory = directory;
		this.file = file;
		this.hidden = hidden;
		this.lastModified = lastModified;
		this.length = length;
		this.totalSpace = totalSpace;
		this.freeSpace = freeSpace;
		this.usableSpace = usableSpace;
	}

	/**
	 * 
	 */
	public File() {
		super();
	}

	/**
	 * @return the name
	 */
	public String getName() {
		return this.name;
	}

	/**
	 * @param name
	 *            the name to set
	 */
	public void setName(String name) {
		this.name = name;
	}

	/**
	 * @return the path
	 */
	public String getPath() {
		return this.path;
	}

	/**
	 * @param path
	 *            the path to set
	 */
	public void setPath(String path) {
		this.path = path;
	}

	/**
	 * @return the parent
	 */
	public String getParent() {
		return this.parent;
	}

	/**
	 * @param parent
	 *            the parent to set
	 */
	public void setParent(String parent) {
		this.parent = parent;
	}

	/**
	 * @return the absolute
	 */
	public boolean isAbsolute() {
		return this.absolute;
	}

	/**
	 * @param absolute
	 *            the absolute to set
	 */
	public void setAbsolute(boolean absolute) {
		this.absolute = absolute;
	}

	/**
	 * @return the absolutePath
	 */
	public String getAbsolutePath() {
		return this.absolutePath;
	}

	/**
	 * @param absolutePath
	 *            the absolutePath to set
	 */
	public void setAbsolutePath(String absolutePath) {
		this.absolutePath = absolutePath;
	}

	/**
	 * @return the canRead
	 */
	public boolean isCanRead() {
		return this.canRead;
	}

	/**
	 * @param canRead
	 *            the canRead to set
	 */
	public void setCanRead(boolean canRead) {
		this.canRead = canRead;
	}

	/**
	 * @return the canWrite
	 */
	public boolean isCanWrite() {
		return this.canWrite;
	}

	/**
	 * @param canWrite
	 *            the canWrite to set
	 */
	public void setCanWrite(boolean canWrite) {
		this.canWrite = canWrite;
	}

	/**
	 * @return the canExecute
	 */
	public boolean isCanExecute() {
		return this.canExecute;
	}

	/**
	 * @param canExecute
	 *            the canExecute to set
	 */
	public void setCanExecute(boolean canExecute) {
		this.canExecute = canExecute;
	}

	/**
	 * @return the directory
	 */
	public boolean isDirectory() {
		return this.directory;
	}

	/**
	 * @param directory
	 *            the directory to set
	 */
	public void setDirectory(boolean directory) {
		this.directory = directory;
	}

	/**
	 * @return the file
	 */
	public boolean isFile() {
		return this.file;
	}

	/**
	 * @param file
	 *            the file to set
	 */
	public void setFile(boolean file) {
		this.file = file;
	}

	/**
	 * @return the hidden
	 */
	public boolean isHidden() {
		return this.hidden;
	}

	/**
	 * @param hidden
	 *            the hidden to set
	 */
	public void setHidden(boolean hidden) {
		this.hidden = hidden;
	}

	/**
	 * @return the lastModified
	 */
	public long getLastModified() {
		return this.lastModified;
	}

	/**
	 * @param lastModified
	 *            the lastModified to set
	 */
	public void setLastModified(long lastModified) {
		this.lastModified = lastModified;
	}

	/**
	 * @return the length
	 */
	public long getLength() {
		return this.length;
	}

	/**
	 * @param length
	 *            the length to set
	 */
	public void setLength(long length) {
		this.length = length;
	}

	/**
	 * @return the totalSpace
	 */
	public long getTotalSpace() {
		return this.totalSpace;
	}

	/**
	 * @param totalSpace
	 *            the totalSpace to set
	 */
	public void setTotalSpace(long totalSpace) {
		this.totalSpace = totalSpace;
	}

	/**
	 * @return the freeSpace
	 */
	public long getFreeSpace() {
		return this.freeSpace;
	}

	/**
	 * @param freeSpace
	 *            the freeSpace to set
	 */
	public void setFreeSpace(long freeSpace) {
		this.freeSpace = freeSpace;
	}

	/**
	 * @return the usableSpace
	 */
	public long getUsableSpace() {
		return this.usableSpace;
	}

	/**
	 * @param usableSpace
	 *            the usableSpace to set
	 */
	public void setUsableSpace(long usableSpace) {
		this.usableSpace = usableSpace;
	}
}
